package com.itheima.Test;

import java.util.Arrays;

public class Test002 {
    public static void main(String[] args) {
        /*
        请定义main()方法，在main()中定义以下数组：
	    int[] arr = {431,54,25,25,26,45,2,4,65,3,64,6,46,7,54};
        使用冒泡排序对元素进行排序；
        排序后，使用二分法查找元素：2，并打印查询结果；
        再使用二分法查找200，并打印查找结果；
         */
        int[] arr = {431, 54, 25, 25, 26, 45, 2, 4, 65, 3, 64, 6, 46, 7, 54};
        //使用冒泡排序对元素进行排序；
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = 0; j < arr.length - 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    //交换值;
                    int temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
            }
        }
        System.out.println(Arrays.toString(arr));
        //排序后，使用二分法查找元素：2，并打印查询结果；
        int i = method(arr, 2);
        System.out.println(i);
        int i1 = method(arr, 200);
        System.out.println(i1);


    }

    public static int method(int[] arr, int num) {
        int start = 0;
        int end = arr.length - 1;
        while (true) {
            if (start > end) {
                return -1;
            }
            //定义一个中间值;
            int mid = (start+end)/2;
            if(num<arr[mid]){
                end = mid-1;
            }else if(num>arr[mid]){
                start=mid+1;
            }else{
                return mid;
            }
        }
    }
}

